package com.nlscan.qdkit.ui.publico.art.mvp;

import com.qing.mvpart.mvp.BasePresenter;
import com.qing.mvpart.mvp.IModel;
import com.qing.mvpart.mvp.IView;

public abstract class NlsBasePresenter<M extends IModel, V extends IView> extends BasePresenter<M, V> {
    public NlsBasePresenter(M model, V rootView) {
        super(model, rootView);
    }

//    protected SimpleLoadListener getSimpleLoadListener(SimpleLoadListener simpleLoadListener) {
//        return i -> {
//            if (!isViewAttached()) {
//                return;
//            }
//
//            getV().hideLoading();
//            simpleLoadListener.onResult(i);
//        };
//    }
//
//    protected SimpleLoadListener getSuccessSimpleLoadListener(SimpleLoadListener simpleLoadListener) {
//        return getSuccessSimpleLoadListener(null, simpleLoadListener);
//    }
//
//    protected <T extends IView> SimpleLoadListener getSuccessSimpleLoadListener(T v, SimpleLoadListener simpleLoadListener) {
//        if (v != null) {
//            v.showLoading();
//        }
//        return i -> {
//            if (!isViewAttached()) {
//                return;
//            }
//
//            getV().hideLoading();
//            if (i != SDKStatus.RET_SUCCESS) {
//                getV().showResult(i);
//                return;
//            }
//
//            simpleLoadListener.onResult(i);
//        };
//    }
//
//    protected <T> LoadListener<T> getLoadListener(LoadListener<T> listener) {
//        return qvResult -> {
//            if (!isViewAttached()) {
//                return;
//            }
//
//            getV().hideLoading();
//            listener.onResult(qvResult);
//        };
//    }
//
//    protected <T> LoadListener<T> getLoadListenerResult(LoadCallback<T> callback) {
//        return getLoadListenerResult(null, callback);
//    }
//
//    protected <T, R extends IView> LoadListener<T> getLoadListenerResult(R v, LoadCallback<T> callback) {
//        if (v != null) {
//            v.showLoading();
//        }
//        return result -> {
//            if (!isViewAttached()) {
//                return;
//            }
//
//            getV().hideLoading();
//            if (result.retSuccess()) {
//                callback.onSuccess(result.getResult());
//            } else {
//                getV().showResult(result.getCode());
//            }
//        };
//    }
//
//    protected interface LoadCallback<T> {
//        void onSuccess(T t);
//    }
//
//    protected void showInputEmpty() {
//        if (isViewAttached()) {
//            getV().showMessage(R.string.key_input_empty);
//        }
//    }
}
